1.Polyfill for bind method 2.Prototype and Prototypal Inheritance 3.call apply and bind method 4.Currying 5.Event Bubbling and Capturing aka Trickling 6.Event Delegation 7.Debouncing 8.Throttling